package com.tj.collection.service.param;

import java.math.BigDecimal;
import java.util.Date;

/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: WatsonQiu
 * Date: 2017/7/24
 * Time: 下午7:23
 */
public class CollectionOrderParam {

    private Long collectionOrderId;

    /**
     *催收单号
     */
    private String collectionNo;
    /**
     *交易号
     */
    private String tradeNo;
    /**
     *账单号
     */
    private String orderBillNo;
    /**
     *用户编号
     */
    private String userCode;
    /**
     *账单期数
     */
    private Integer period;
    /**
     *总期数
     */
    private Integer totalPeriod;
    /**
     *产品编码
     */
    private String productCode;
    /**
     *产品类目
     */
    private String productType;
    /**
     *借款金额（传标金额）
     */
    private BigDecimal realCapital;
    /**
     *打款金额
     */
    private BigDecimal capital;
    /**
     *到期应还
     */
    private BigDecimal expireAmount;
    /**
     *已还金额
     */
    private BigDecimal paidAmount;
    /**
     *抵扣金额
     */
    private BigDecimal deductAmount;
    /**
     *利息
     */
    private BigDecimal interest;
    /**
     *服务费
     */
    private BigDecimal lateFee;
    /**
     *逾期服务费
     */
    private BigDecimal lateServiceFee;
    /**
     *逾期费率
     */
    private BigDecimal lateFeeRatio;
    /**
     *姓名
     */
    private String name;
    /**
     *手机号
     */
    private String mobile;
    /**
     *省份标识
     */
    private Integer province;
    /**
     *身份证号码
     */
    private String identityNo;
    /**
     *渠道
     */
    private String channel;
    /**
     *账单应还日
     */
    private Date repaymentDate;
    /**
     *实际还款时间
     */
    private Date actualRepaymentDate;
    /**
     *逾期天数
     */
    private Integer overdueDays;
    /**
     *账单状态 0-未结清 1-已结清 2-已锁定
     */
    private Integer orderStatus;

    /**
     *锁单到期时间
     */
    private Date lockExpiration;
    /**
     *交易类型 0-新增 1-复借
     */
    private Integer isNewAdd;
    /**
     * 分配模式 0-自动分配(默认) 1-手动分配
     */
    private Integer assignMode;

    private BigDecimal externalRate;


    public BigDecimal getExternalRate() {
        return externalRate;
    }

    public  CollectionOrderParam setExternalRate(BigDecimal externalRate) {
        this.externalRate = externalRate;
        return this;
    }

    public BigDecimal getPaidAmount() {
        return paidAmount;
    }

    public  CollectionOrderParam setPaidAmount(BigDecimal paidAmount) {
        this.paidAmount = paidAmount;
        return this;
    }

    public Long getCollectionOrderId() {
        return collectionOrderId;
    }

    public  CollectionOrderParam setCollectionOrderId(Long collectionOrderId) {
        this.collectionOrderId = collectionOrderId;
        return this;
    }

    public String getCollectionNo() {
        return collectionNo;
    }

    public  CollectionOrderParam setCollectionNo(String collectionNo) {
        this.collectionNo = collectionNo;
        return this;
    }

    public String getTradeNo() {
        return tradeNo;
    }

    public  CollectionOrderParam setTradeNo(String tradeNo) {
        this.tradeNo = tradeNo;
        return this;
    }

    public String getOrderBillNo() {
        return orderBillNo;
    }

    public  CollectionOrderParam setOrderBillNo(String orderBillNo) {
        this.orderBillNo = orderBillNo;
        return this;
    }

    public String getUserCode() {
        return userCode;
    }

    public  CollectionOrderParam setUserCode(String userCode) {
        this.userCode = userCode;
        return this;
    }

    public Integer getPeriod() {
        return period;
    }

    public  CollectionOrderParam setPeriod(Integer period) {
        this.period = period;
        return this;
    }

    public Integer getTotalPeriod() {
        return totalPeriod;
    }

    public  CollectionOrderParam setTotalPeriod(Integer totalPeriod) {
        this.totalPeriod = totalPeriod;
        return this;
    }

    public String getProductCode() {
        return productCode;
    }

    public  CollectionOrderParam setProductCode(String productCode) {
        this.productCode = productCode;
        return this;
    }

    public String getProductType() {
        return productType;
    }

    public  CollectionOrderParam setProductType(String productType) {
        this.productType = productType;
        return this;
    }

    public BigDecimal getRealCapital() {
        return realCapital;
    }

    public  CollectionOrderParam setRealCapital(BigDecimal realCapital) {
        this.realCapital = realCapital;
        return this;
    }

    public BigDecimal getCapital() {
        return capital;
    }

    public  CollectionOrderParam setCapital(BigDecimal capital) {
        this.capital = capital;
        return this;
    }

    public BigDecimal getExpireAmount() {
        return expireAmount;
    }

    public  CollectionOrderParam setExpireAmount(BigDecimal expireAmount) {
        this.expireAmount = expireAmount;
        return this;
    }

    public BigDecimal getDeductAmount() {
        return deductAmount;
    }

    public  CollectionOrderParam setDeductAmount(BigDecimal deductAmount) {
        this.deductAmount = deductAmount;
        return this;
    }

    public BigDecimal getInterest() {
        return interest;
    }

    public  CollectionOrderParam setInterest(BigDecimal interest) {
        this.interest = interest;
        return this;
    }

    public BigDecimal getLateFee() {
        return lateFee;
    }

    public  CollectionOrderParam setLateFee(BigDecimal lateFee) {
        this.lateFee = lateFee;
        return this;
    }

    public BigDecimal getLateServiceFee() {
        return lateServiceFee;
    }

    public  CollectionOrderParam setLateServiceFee(BigDecimal lateServiceFee) {
        this.lateServiceFee = lateServiceFee;
        return this;
    }

    public BigDecimal getLateFeeRatio() {
        return lateFeeRatio;
    }

    public  CollectionOrderParam setLateFeeRatio(BigDecimal lateFeeRatio) {
        this.lateFeeRatio = lateFeeRatio;
        return this;
    }

    public String getName() {
        return name;
    }

    public  CollectionOrderParam setName(String name) {
        this.name = name;
        return this;
    }

    public String getMobile() {
        return mobile;
    }

    public  CollectionOrderParam setMobile(String mobile) {
        this.mobile = mobile;
        return this;
    }

    public Integer getProvince() {
        return province;
    }

    public  CollectionOrderParam setProvince(Integer province) {
        this.province = province;
        return this;
    }

    public String getIdentityNo() {
        return identityNo;
    }

    public  CollectionOrderParam setIdentityNo(String identityNo) {
        this.identityNo = identityNo;
        return this;
    }

    public String getChannel() {
        return channel;
    }

    public  CollectionOrderParam setChannel(String channel) {
        this.channel = channel;
        return this;
    }

    public Date getRepaymentDate() {
        return repaymentDate;
    }

    public  CollectionOrderParam setRepaymentDate(Date repaymentDate) {
        this.repaymentDate = repaymentDate;
        return this;
    }

    public Date getActualRepaymentDate() {
        return actualRepaymentDate;
    }

    public  CollectionOrderParam setActualRepaymentDate(Date actualRepaymentDate) {
        this.actualRepaymentDate = actualRepaymentDate;
        return this;
    }

    public Integer getOverdueDays() {
        return overdueDays;
    }

    public  CollectionOrderParam setOverdueDays(Integer overdueDays) {
        this.overdueDays = overdueDays;
        return this;
    }

    public Integer getOrderStatus() {
        return orderStatus;
    }

    public  CollectionOrderParam setOrderStatus(Integer orderStatus) {
        this.orderStatus = orderStatus;
        return this;
    }


    public Date getLockExpiration() {
        return lockExpiration;
    }

    public  CollectionOrderParam setLockExpiration(Date lockExpiration) {
        this.lockExpiration = lockExpiration;
        return this;
    }

    public Integer getIsNewAdd() {
        return isNewAdd;
    }

    public  CollectionOrderParam setIsNewAdd(Integer isNewAdd) {
        this.isNewAdd = isNewAdd;
        return this;
    }

    public Integer getAssignMode() {
        return assignMode;
    }

    public  CollectionOrderParam setAssignMode(Integer assignMode) {
        this.assignMode = assignMode;
        return this;
    }
}
